package eteam.aps.mapper;

import eteam.aps.systeminterface.model.vo.QueryInfoVo;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

/**
 * 查询信息持久层
 *
 * 用于查询用户、部门、机构等信息
 *
 * @author WMT
 * @Date 2023/2/3 14:00
 */
@Mapper
public interface QueryInfoMapper {

    /**
     * 查询字典列表
     * @param fState 状态
     * @return 列表
     */
    List<QueryInfoVo> dictionaryList(int fState);

    /**
     * 查询用户列表
     * @param map 筛选条件
     * @return 用户信息列表
     */
    List<QueryInfoVo> personList(Map<String ,Object> map);

    /**
     * 查询组织机构列表
     * @return 组织机构列表
     */
    List<QueryInfoVo> orgList(int state);

    /**
     * 查询保障机构列表
     * @param fState 状态为启用
     * @return 列表
     */
    List<QueryInfoVo> proOrgList(int fState);

    /**
     * 查询仓库列表
     * @param fState 状态为启用
     * @return 仓库列表
     */
    List<QueryInfoVo> depotList(int fState);

    /**
     * 查询保障机构下生产商列表
     * @param fState 状态为启用
     * @return 生产商列表
     */
    List<QueryInfoVo> producerList(Map<String,Object> map);

    /**
     * 查询型号、单位、单据类别等列表
     * @param fDdcName 查询条件
     * @return 型号列表
     */
    List<QueryInfoVo> dictList(String fDdcName);

    /**
     * 查询费用信息列表
     * @return 费用信息列表
     */
    List<QueryInfoVo> fundInfoList(int fState);


    /**
     * 查询保养计划列表
     * @param fState
     * @return
     */
    List<QueryInfoVo> maintainPlanList(int fState);


    List<QueryInfoVo> orgCodeList(int fState);
}
